module.exports = {
    // publicPath: './',
    devServer: {
        open: true,//设置自动打开
        port: '8888',//设置端口
        proxy: {
            //设置代理
            '/api': {
                target: 'http://10.0.25.67:7066',//服务器
                // target: 'http://10.129.203.73:7067',//窦孟园
                // target: 'http://10.129.203.212:7066',//刘晓飞
                // target: 'http://stage.gs.sjcjxt.znxdcloud.com',//测试环境
                ws: true,
                changeOrigin: true,
                pathRewrite: {
                    // '^/api': '',
                    '^/api/download': '/api/upload',
                }
            },
            // '/MMM': {
            //     target: 'http://10.129.204.180:8811',
            //     ws: true,
            //     changeOrigin: true,
            //     pathRewrite: {
            //         '^/MMM': '/api',
            //     }
            // }
        }
    },
    configureWebpack: config => { //开发服务架在根目径 production 判断
        if (process.env.NODE_ENV === 'production') {
            const path = require('path')
            const PrerenderSPAPlugin = require('prerender-spa-plugin')
            const Renderer = PrerenderSPAPlugin.PuppeteerRenderer
            return {
                plugins: [
                    new PrerenderSPAPlugin({
                        staticDir: path.join(__dirname, 'dist'), //构建输出目录（打包文件名）
                        routes: ['/login', '/home/home'],
                        renderer: new Renderer({
                            inject: {
                                foo: 'bar'
                            },
                            headless: false,
                            renderAfterDocumentEvent: 'render-event'
                        })
                    })
                ],
                //警告 webpack 的性能提示
                performance: {
                    hints: 'warning',
                    //入口起点的最大体积
                    maxEntrypointSize: 50000000,
                    //生成文件的最大体积
                    maxAssetSize: 30000000,
                    //只给出 js 文件的性能提示
                    assetFilter: function (assetFilename) {
                        return assetFilename.endsWith('.js')
                    }
                }
            }
        } else {
            // 为开发环境修改配置...
        }
    },
    chainWebpack: config => {
        // TODO: Remove this workaround once https://github.com/vuejs/vue-cli/issues/2463 is fixed
        // Remove preload plugins for multi-page build to prevent infinite recursion
        let pages = [...config.entryPoints.store.keys()]
        pages.forEach(page => {
            config.plugins.delete(`preload-${page}`)
            config.plugins.delete(`prefetch-${page}`)
        })
        // config.module
        //     .rule('css')
        //     .test(/\.css$/)
        //     .oneOf('vue')
        //     .resourceQuery(/\?vue/)
        //     .use('px2rem')
        //     .loader('px2rem-loader')
        //     .options({
        //         remUnit: 75
        //     })
        // config.module
        //     .rule("snapsvg")
        //     .test(require.resolve("snapsvg"))
        //     .use("imports-loader?this=>window,fix=>module.exports=0")
        //     .loader("imports-loader")
        //     .end();
    },
    pages: {
        index: {
            entry: 'src/main.js', // page 的入口
            template: 'public/index.html', // 模板来源
            filename: 'index.html'  // 在 dist/index.html 的输出
        },
        logout: 'src/logout.js' //登出口
    }
}